package org.atguigu.test;

import org.apache.ibatis.session.SqlSession;
import org.atguigu.entity.Student;
import org.atguigu.utils.SqlSessionUtil;

import java.util.List;

public class test03 {
    public static void main(String[] args) {
        /*
        测试类工具SqlSessionUtil
         */
        SqlSession session = SqlSessionUtil.getSqlSession();
        //根据id查询单条
//        Student s = session.selectOne("abc.getById", "A0001");
//        System.out.println(s);
        //查询所以记录
//        List<Student> list = session.selectList("abc.getAll");
//        list.forEach(System.out::println);
        /*
        以下DML操作注意事项
        mybatis是手动提交事务
        你在做添加修改删除操作之后，需要手动提交事务
         */


//添加操作
        /*
        为sql传递的是一个Student s
        在sql中，会将s的属性一一get解析出来
            <insert id="insert">
        insert into t_student(id,name,age) values (s.getId(),s.getName(),s.getAge())
    </insert>
         */
//        Student s = new Student("A0011", "hcy", 26);
//        session.insert("abc.insert",s);
//        //提交事务
//        session.commit();

        //修改操作
//        Student s = new Student("A0011", "hcy123", 27);
//        session.update("abc.update",s);
//        session.commit();
        //删除操作
        session.delete("abc.delete","A0011");
        session.commit();
        SqlSessionUtil.close(session);
    }
}
